package com.lantosec.hmrp.modules.eval.vo;

import java.math.BigDecimal;
import java.util.Date;

import com.lantosec.hmrp.modules.eval.entity.EvalEventExtraduty;
import com.lantosec.hmrp.core.mvc.BaseVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * <p>
 * 考评任务事项追加责任 VO对象
 * </p>
 *
 * @author AutoCode
 * @since 2020-03-19
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@ApiModel(value="EvalEventExtraduty对象", description="考评任务事项追加责任")
public class EvalEventExtradutyVO extends BaseVO<EvalEventExtraduty> {
    private static final long serialVersionUID = 1L;


    public EvalEventExtradutyVO(EvalEventExtraduty entity){
        this.evalEventExtradutyId = entity.getEvalEventExtradutyId();
        this.evalTaskEventId = entity.getEvalTaskEventId();
        this.rewardOrientation = entity.getRewardOrientation();
        this.rewardValue = entity.getRewardValue();
        this.targetMode = entity.getTargetMode();
        this.targetId = entity.getTargetId();
        this.targetName = entity.getTargetName();
        this.reviewState = entity.getReviewState();
        this.reviewUserId = entity.getReviewUserId();
        this.reviewUser = entity.getReviewUser();
        this.reviewTime = entity.getReviewTime();
    }

    @Override
    public EvalEventExtraduty convertToEntity(){
        return new EvalEventExtraduty(this);
    }


    @ApiModelProperty(value = "事件追加责任ID")
    private Integer evalEventExtradutyId;

    @ApiModelProperty(value = "事件ID")
    private Integer evalTaskEventId;

    @ApiModelProperty(value = "奖惩形式(1:分 2:钱)")
    private Integer rewardOrientation;

    @ApiModelProperty(value = "奖惩值(正为加 负为扣)")
    private BigDecimal rewardValue;

    @ApiModelProperty(value = "责任对象类型(1:部门 2:个人)")
    private Integer targetMode;

    @ApiModelProperty(value = "责任对象ID")
    private String targetId;

    @ApiModelProperty(value = "责任对象名称")
    private String targetName;

    @ApiModelProperty(value ="审核状态")
    private Integer reviewState;

    @ApiModelProperty(value ="审核人ID")
    private String reviewUserId;

    @ApiModelProperty(value ="审核人")
    private String reviewUser;

    @ApiModelProperty(value ="审核时间")
    private Date reviewTime;
}
